﻿using BPMN.Application.Contracts.DTO.Request.Material;
using BPMN.Application.Contracts.DTO.Response;
using BPMN.Application.Contracts.DTO.Response.Material;
using BPMN.Domain.Entity.Material;
using BPMN.DomianShare;
using Microsoft.AspNetCore.DataProtection;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace BPMN.Application.IService
{
    public interface IMaterialService : IAppServiceBase<Material>, IScoped
    {
        //
        Task<ResultResponseDto<int>> AddMaterial(MaterialRequestDto entity);
        Task<ResultResponseDto<int>> UpdateMaterial(MaterialRequestDto entity);
        Task<ResultResponseDto<PageResponseDto<List<MaterialResponseDto>>>> GetMaterial(int pageindex, int pagesize, string? mEncode,string? MName,string?pName);
        Task<ResultResponseDto<MaterialResponseDto>> GetMaterialById(int Id);
        Task<ResultResponseDto<int>> DeleleMaterial(int MId);
    }
}
